
#ifndef _BARRADEFERRAMENTAS_H_
#define _BARRADEFERRAMENTAS_H_

#include <quicklib.h>
#include "BarraDeFerramentas/ContainerSuavizacao.h"
#include "BarraDeFerramentas/ContainerAgucamento.h"
#include "BarraDeFerramentas/ContainerHistograma.h"
#include "BarraDeFerramentas/ContainerFrequencia.h"
#include "BarraDeFerramentas/ContainerTopologicas.h"


class BarraDeFerramentas : public Controle
{
public:

    BarraDeFerramentas(int cx, int cy, int x, int y);

//    void MostrarOperacoes();

    bool AoBaixarEsq(EventoBaixarEsq ev);

    inline ContainerSuavizacao*  Suavizacao()  const;
    inline ContainerAgucamento*  Agucamento()  const;
    inline ContainerHistograma*  Histograma()  const;
    inline ContainerFrequencia*  Frequencia()  const;
    inline ContainerTopologicas* Topologicas() const;

private:

    ContainerSuavizacao*  m_suavizacao;
    ContainerAgucamento*  m_agucamento;
    ContainerHistograma*  m_histograma;
    ContainerFrequencia*  m_frequencia;
    ContainerTopologicas* m_topologicas;

};


inline ContainerSuavizacao* BarraDeFerramentas::Suavizacao() const
{
    return m_suavizacao;
}


inline ContainerAgucamento* BarraDeFerramentas::Agucamento() const
{
    return m_agucamento;
}


inline ContainerHistograma* BarraDeFerramentas::Histograma() const
{
    return m_histograma;
}


inline ContainerFrequencia* BarraDeFerramentas::Frequencia() const
{
    return m_frequencia;
}


inline ContainerTopologicas* BarraDeFerramentas::Topologicas() const
{
    return m_topologicas;
}


#endif  // _BARRADEFERRAMENTAS_H_
